.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
.TH "PUPPET\-FILEBUCKET" "8" "December 2020" "Puppet, Inc." "Puppet manual"
.
.SH "NAME"
\fBpuppet\-filebucket\fR \- Store and retrieve files in a filebucket
.
.SH "SYNOPSIS"
A stand\-alone Puppet filebucket client\.
.
.SH "USAGE"
puppet filebucket \fImode\fR [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose] [\-l|\-\-local] [\-r|\-\-remote] [\-s|\-\-server \fIserver\fR] [\-f|\-\-fromdate \fIdate\fR] [\-t|\-\-todate \fIdate\fR] [\-b|\-\-bucket \fIdirectory\fR] \fIfile\fR \fIfile\fR \.\.\.
.
.P
Puppet filebucket can operate in three modes, with only one mode per call:
.
.P
backup: Send one or more files to the specified file bucket\. Each sent file is printed with its resulting md5 sum\.
.
.P
get: Return the text associated with an md5 sum\. The text is printed to stdout, and only one file can be retrieved at a time\.
.
.P
restore: Given a file path and an md5 sum, store the content associated with the sum into the specified file path\. You can specify an entirely new path to this argument; you are not restricted to restoring the content to its original location\.
.
.P
diff: Print a diff in unified format between two checksums in the filebucket or between a checksum and its matching file\.
.
.P
list: List all files in the current local filebucket\. Listing remote filebuckets is not allowed\.
.
.SH "DESCRIPTION"
This is a stand\-alone filebucket client for sending files to a local or central filebucket\.
.
.P
Note that \'filebucket\' defaults to using a network\-based filebucket available on the server named \'puppet\'\. To use this, you\'ll have to be running as a user with valid Puppet certificates\. Alternatively, you can use your local file bucket by specifying \'\-\-local\', or by specifying \'\-\-bucket\' with a local path\.
.
.IP "" 4
.
.nf

  find /opt/puppetlabs/server/data/puppetserver/bucket \-type f \-mtime +45 \-atime +45 \-print0 | xargs \-0 rm
.
.fi
.
.IP "" 0
.
.IP "\(bu" 4
Restrict the directory to a maximum size after which the oldest items are removed\.
.
.IP "" 0
.
.SH "OPTIONS"
Note that any setting that\'s valid in the configuration file is also a valid long argument\. For example, \'ssldir\' is a valid setting, so you can specify \'\-\-ssldir \fIdirectory\fR\' as an argument\.
.
.P
See the configuration file documentation at https://puppet\.com/docs/puppet/latest/configuration\.html for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \'\-\-genconfig\'\.
.
.TP
\-\-bucket
Specify a local filebucket path\. This overrides the default path set in \'$clientbucketdir\'\.
.
.TP
\-\-debug
Enable full debugging\.
.
.TP
\-\-fromdate
(list only) Select bucket files from \'fromdate\'\.
.
.TP
\-\-help
Print this help message\.
.
.TP
\-\-local
Use the local filebucket\. This uses the default configuration information and the bucket located at the \'$clientbucketdir\' setting by default\. If \'\-\-bucket\' is set, puppet uses that path instead\.
.
.TP
\-\-remote
Use a remote filebucket\. This uses the default configuration information and the bucket located at the \'$bucketdir\' setting by default\.
.
.TP
\-\-server_list
A list of comma separated servers; only the first entry is used for file storage\. This setting takes precidence over \fBserver\fR\.
.
.TP
\-\-server
The server to use for file storage\. This setting is only used if \fBserver_list\fR is not set\.
.
.TP
\-\-todate
(list only) Select bucket files until \'todate\'\.
.
.TP
\-\-verbose
Print extra information\.
.
.TP
\-\-version
Print version information\.
.
.SH "EXAMPLES"
.
.nf

## Backup a file to the filebucket, then restore it to a temporary directory
$ puppet filebucket backup /etc/passwd
/etc/passwd: 429b225650b912a2ee067b0a4cf1e949
$ puppet filebucket restore /tmp/passwd 429b225650b912a2ee067b0a4cf1e949

## Diff between two files in the filebucket
$ puppet filebucket \-l diff d43a6ecaa892a1962398ac9170ea9bf2 7ae322f5791217e031dc60188f4521ef
1a2
> again

## Diff between the file in the filebucket and a local file
$ puppet filebucket \-l diff d43a6ecaa892a1962398ac9170ea9bf2 /tmp/testFile
1a2
> again

## Backup a file to the filebucket and observe that it keeps each backup separate
$ puppet filebucket \-l list
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile

$ echo again >> /tmp/TestFile

$ puppet filebucket \-l backup /tmp/TestFile
/tmp/TestFile: 7ae322f5791217e031dc60188f4521ef

$ puppet filebucket \-l list
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015\-05\-11 09:52:15 /tmp/TestFile

## List files in a filebucket within date ranges
$ puppet filebucket \-l \-f 2015\-01\-01 \-t 2015\-01\-11 list
<Empty Output>

$ puppet filebucket \-l \-f 2015\-05\-10 list
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015\-05\-11 09:52:15 /tmp/TestFile

$ puppet filebucket \-l \-f "2015\-05\-11 09:30:00" list
7ae322f5791217e031dc60188f4521ef 2015\-05\-11 09:52:15 /tmp/TestFile

$ puppet filebucket \-l \-t "2015\-05\-11 09:30:00" list
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile
## Manage files in a specific local filebucket
$ puppet filebucket \-b /tmp/TestBucket backup /tmp/TestFile2
/tmp/TestFile2: d41d8cd98f00b204e9800998ecf8427e
$ puppet filebucket \-b /tmp/TestBucket list
d41d8cd98f00b204e9800998ecf8427e 2015\-05\-11 09:33:22 /tmp/TestFile2

## From a Puppet Server, list files in the server bucketdir
$ puppet filebucket \-b $(puppet config print bucketdir \-\-section server) list
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile
7ae322f5791217e031dc60188f4521ef 2015\-05\-11 09:52:15 /tmp/TestFile
.
.fi
.
.SH "AUTHOR"
Luke Kanies
.
.SH "COPYRIGHT"
Copyright (c) 2011 Puppet Inc\., LLC Licensed under the Apache 2\.0 License
